Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

Пересилання N послідовних байт з однієї області пам’яті в іншу:

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Не вказано

Інформація про роботу

Рік:
2024
Тип роботи:
Задача
Предмет:
Цифрова техніка і мікропроцесори

Частина тексту файла

Пересилання N послідовних байт з однієї області пам’яті в іншу: org 100h N EQU 03h mvi c,N lxi d,SRC lxi h,DST call MOVE nop hlt MOVE: ldax d mov m,a inx d inx h dcr c jnz MOVE ret SRC db 01h,02h,03h DST db 00h,00h,00h --------------------------------------------------------------------- Пересилання послідовності байтів(до заданого) з однієї облісті пам’яті в іншу. org 100h ENDCHAR EQU 00h mvi c,ENDCHAR lxi d,SRC lxi h,DST call MOVE nop hlt MOVE: ldax d mov m,a inx d inx h cmp c jnz MOVE ret SRC db 01h,02h,03h,00h DST db 00h,00h,00h,00h ----------------------------------------------------------------Обчислення суми однобайтових елементів масиву org 100h N EQU 05h mvi c,N lxi h,ARRAY call ARRSUM ; DE=SUM(ARRAY[i]) nop hlt ARRSUM: lxi d,0000h L00: mov a,m add e mov e,a mov a,d aci 00h mov d,a inx h dcr c jnz L00 ret ARRAY db 0F0h,0F0h,07h,08h,09h --------------------------------------------------------------------- Обчислення контрольної суми області пам’яті шляхом додавання за модулем 216 старших і молодших тетрад кожного байту окремо; результат програми – два байти org 100h N EQU 05h mvi c,N lxi h,ARRAY call ARRCS ; DE=CHECKSUM(ARRAY[i]) nop hlt ARRCS: lxi d,0000h L00: mov a,m ani 0Fh add e mov e,a mov a,d aci 00h mov d,a mov a,m ani 0F0h rrc rrc rrc rrc add e mov e,a mov a,d aci 00h mov d,a inx h dcr c jnz L00 ret ARRAY db 0F0h,0F0h,07h,08h,09h --------------------------------------------------------------------- Додавання двох багатобайтових чисел. org 100h N EQU 04h mvi c,N lxi d,SRC lxi h,DST call ADDN ; DST = DST + SRC nop hlt ADDN: ora a L00: ldax d adc m mov m,a inx d inx h dcr c jnz L00 ret DST db 78h,34h,56h,12h SRC db 78h,34h,56h,12h --------------------------------------------------------------------- Обчислення суми N двобайтових елементів масиву. org 100h N EQU 03h mvi a,N lxi b,ARRAY call MADD2 hlt MADD2: lxi h,0000h L00: push psw ldax b mov e,a inx b ldax b mov d,a inx b dad d pop psw dcr a jnz L00 ret ARRAY: dw 1002h dw 5005h dw 3009h --------------------------------------------------------------------- Порівняння двох чисел і запису в задану комірку пам’яті більшого. org 100h N1 EQU 10h N2 EQU 20h lxi h,DST mvi b,N1 mvi c,N2 call CMPSAVE nop hlt CMPSAVE: mov a,b cmp c jnc L00 mov m,c ret L00: mov m,b ret DST db 00h --------------------------------------------------------------------- Перемноження двох однобайтових чисел без знака org 100h mvi c,0FFh mvi b,0AAh call MUL nop hlt MUL: mvi d,00h mov e,b lxi h,0000h mvi a,08h L00: push psw mov a,c rrc mov c,a jnc L01 dad d L01: xra a mov a,d ral mov d,a xra a mov a,e ral mov e,a mvi a,00h adc d mov d,a pop psw dcr a jnz L00 ret --------------------------------------------------------------------- Запис нулів в облать пам’яті з адреси А1 до адреси А2 включно. org 100h A1 EQU 0200h A2 EQU 0210h lxi h,A1 lxi d,A2 call ZERO ; A2 MUST BE >= A1 nop hlt ZERO: mov a,d cmp h jnz L00 mov a,e cmp l jz L01 L00: mvi m,00h inx h jmp ZERO L01: mvi m,00h ret --------------------------------------------------------------------- Знаходження максимального числа в масиві даних, представлених як ціле число без знаку. org 100h N EQU 05h mvi c,N-1 lxi h,ARRAY call ARRMAX ; A=MAX(ARRAY[i]) nop hlt ARRMAX: mov a,m L00: inx h cmp m jnc L01 mov a,m L01: dcr c jnz L00 ret ARRAY db 060h,070h,0F7h,98h,0FFh --------------------------------------------------------------------- Віднімання двох багатобайтових десяткових двійково – кодованих чисел без знака. org 100h N EQU 02h mvi c,N lxi h,SRC + N - 1 lxi d,DST + N - 1 call SUBBCD ; DST = DST - SRC nop hlt SUBBCD: stc L00: mvi a,99h aci 00h sub m xchg add m daa mov m,a xchg dcx h dcx d dcr c jnz L00 ret DST: db 56h db 73h SRC: db 24h db 89h Ділення 16-ти розрядного числа без знака на 8-ми розрядне число без знака. org 100h lxi d,0319h m...
Антиботан аватар за замовчуванням

01.01.1970 03:01

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини